<?php
require_once 'BaseController.php';

/**
 * 店舗を探す(TOP)クラス<br />
 *
 * @package apamanshop
 * @author　
 * @copyright　
 */
class Shop_IndexController extends Shop_BaseController
{
	/**
	 * メインアクション
	 */
	public function indexAction()
	{
		if (Apm_Config_Search::RENEW_2012) {
			$this->_display_path = APPLICATION_PATH . '/modules/shop/views/scripts/index_new.tpl';
			$this->_newTemplate = true;
			$this->_import_seo_search = true;
			// テンプレート変更
			$this->_error_helper   = $this->getApmHelper('error_new_helper.tpl');
			$this->_newopen_helper = $this->getApmHelper('index/newopen_new_helper.tpl');
			$this->_data['common_pop_area_helper'] = APPLICATION_PATH . '/modules/common/views/helpers/pop_area.tpl';
		}

        //　CMS用パラメータ設定
        $this->setCmsParams();

        // パンくず設定
        $this->_breadcrumb->reset();
        $this->_breadcrumb->add(Apm_Config_Search::BREADCRUMB_TOP, $this->_baseurl);
        $url = $this->_baseurl . $this->deleteDiagonal(Apm_Config_Shop::URL_INDEX) . $this->createUrlParams();
        $this->_breadcrumb->add('店舗検索', $url, 'shopindex');
        // グローバルナビから遷移してきた場合
        if ($this->isGlobalNavi())
        {
//        	Apm_Util_GlobalNavi_Common::transitionJudge(Apm_Config_Search::SRHKBN_TENPO);

			// canonical
			$this->addMetaCanonical($this->_baseurl . 'shop/');

        	$this->_params = Apm_Util_GlobalNavi_Common::transitionJudge(Apm_Config_Search::SRHKBN_TENPO);
        	$this->_model = '';

        	// 沿線検索からの場合
	        if (!is_null($this->getParamValue('RailCd')))
	        {
	        	// モデルインスタンス生成
				$this->_model = new Shop_Model_ListForRail();
				$tokucho_onclick = "onclick=\"action='" . Apm_Config_Shop::URL_LIST . "'; javascript:ServiceControl(document.frm_pref);\"";
	        }
	        // 住所検索からの場合
	        else if (!is_null($this->getParamValue('PrefCd')))
	        {
				// モデルインスタンス生成
				$this->_model = new Shop_Model_ListForCity();
				$tokucho_onclick = "onclick=\"action='" . Apm_Config_Shop::URL_LIST . "'; javascript:ServiceControl(document.frm_pref);\"";
	        }

			if ($this->_model) {
		        // サービス内容クリック時の内容
				$this->_data['tokucho_onclick'] = $tokucho_onclick;
		        // 店舗一覧データ取得
			    $shopList = $this->_model->getList($this->_params);
		        // 取得結果が０件
		        if (count($shopList) == 0)
		        {
			        $this->_main_helper = $this->_error_helper;
			        return;
		        }

		        $url = $this->_baseurl . $this->deleteDiagonal(Apm_Config_Shop::URL_DETAIL);

		        // 表示用データに変換
		        $this->_data['shopList'] = $this->_model->convertList($shopList, $this->_tenpoimageurl, $url, $this->_params);
		        // (株)文字化け対応
		        foreach ($this->_data['shopList'] as &$shop){
		            $shop['M05_HOUZINMEI'] = Apm_Util::replaceUnicode($shop['M05_HOUZINMEI']);
		        }

		        // パンくず設定
		        $this->updatePankuzu();

		        $url = $this->_baseurl . $this->deleteDiagonal(Apm_Config_Shop::URL_LIST) . $this->createUrlParams();
		        $this->_breadcrumb->add('店舗一覧', $url, 'shoplist');
		        // BLOCKの設定
				if ($this->_newTemplate) {
					$this->_list_helper  = $this->getApmHelper('list/list_new_helper.tpl');
					$this->addMetaCss('/common_new/css/shop.css', array('media'=>'all'));
				}
		        $this->_main_helper = $this->_list_helper;
		        return;
		    }
        }

        $this->_data['checkbox_changed'] = 'onclick="javascript:checkboxChanged(document.frm_SelPref);"';
        
		// サービス内容検索チェックボックスを非活性
		$this->_data['tokucho_disabled'] = "disabled='disabled'";
        // 左メニュー制御
        $this->_data['menuMode'] = 'off';
        // モデルインスタンス生成
        $this->_model = new Shop_Model_Index();
       	// 新規オープン店舗リスト所得
        $this->_data['newopenList'] = $this->_model->getList($this->_params);
		// 都道府県静的URL取得
		$staticUrl = Apm_Bukkenurl::generateShopPrefStaticUrl();
		$this->_data['pref_static_url'] = $staticUrl['PREF'];
        // Block生成
        $this->_main_helper = $this->_newopen_helper;
	}

	/**
	 * CMS用パラメータ設定
	 */
	private function setCmsParams()
	{
		if ($this->_newTemplate) {
			// タイトル設定
			$this->setTitle('店舗から探す'.Apm_Config_Search::NEW_TITLE_ADD.Apm_Config_Search::TITLE_ADDTAIL);
			// Description設定
			$this->setDescription('店舗から探す'.Apm_Config_Search::NEW_DESCRIPTION_ADD);
			// Keyword設定
			$this->setKeywords(Apm_Config_Search::NEW_KEYWORDS_ADD);
			// css
			$this->addMetaCss('/common_new/css/sub02.css', array('media'=>'all'));
			// javascript
			$this->addMetaJs('/common_new/js/import.js');
		} else {
			// タイトル設定
			$this->setTitle('賃貸情報アパマンショップ[店舗から検索]');
			// Description設定
			$this->setDescription('全国のお部屋探しなら賃貸情報アパマンショップ。全国の賃貸住宅、賃貸マンション、賃貸アパート、賃貸不動産情報が満載です。地域・沿線・地図・路線図からあなたにピッタリの賃貸物件を検索できます。');
			// Keyword設定
			$this->setKeywords('賃貸,賃貸情報,賃貸住宅,賃貸マンション,賃貸アパート,賃貸住宅情報,賃貸不動産,賃貸検索,部屋探し,不動産賃貸,不動産,アパマン,あぱまん,apaman');
			// javascript
			$this->addMetaJs('/js/shop/list.js');
			$this->addMetaJs('/app/js/shop/shop.js');
			$this->addMetaJs('/app/js/shop/shopindex.js');
			$this->addMetaJs('/app/js/shop/search.js');
			// css
			$this->addMetaCss('/css/shop/shop.css');
		}
	}
}
?>